package Java.BlackHorse.Stream;

import java.util.ArrayList;
import java.util.Collections;
import java.util.stream.Stream;

public class StreamDemo6 {
    /*

        stream流的中间方法

    distinct 元素去重 依赖hashCode 和 equals
    concat 合并 a 和 b 为一个流

    注意1：中间方法，返回新的Stream流，原来的Stream流只能使用一次，建议使用链式编程
    注意2：修改Stream流中的数据，不会影响原来集合或者数组中的数据
    */

    public static void main(String[] args) {
        ArrayList<String> list2 = new ArrayList<String>();
        Collections.addAll(list2,"张三","张三","李四","王五","沈六","李四","麻子","富贵");

        ArrayList<String> list3 = new ArrayList<String>();
        Collections.addAll(list3,"张三丰","小龙女");


        System.out.println("----------distinct----------");
        list2.
                stream().
                distinct().
                forEach(s -> System.out.println(s));

        System.out.println("----------concat----------");

        Stream.
                concat(list2.stream(),list3.stream()).
                forEach(s -> System.out.println(s));

    }



}
